home *** CD-ROM | disk | FTP | other *** search
/ Meeting Pearls 4 / Meeting Pearls Vol. IV (1996)(GTI - Schatztruhe)[!].iso / Pearls / disk / Misc / GNUTar / README.AMIGA < prev    next >
Text File  |  1996-04-19  |  12KB  |  230 lines

  1.  
  2.  ===========================================================================
  3.  = GNUTar Amiga Port of V1.11.2 (originally from 25 Mar 1993)              =
  4.  = ----------------------------------------------------------------------- =
  5.  = Amiga Port release version: V1.3                                        =
  6.  = Release Date:               19.04.1996                                  =
  7.  ===========================================================================
  8.  
  9.  1995-96 rework, SAS/C V6.56 recompilation, GNUTar V1.11+ adaption,
  10.  and 68030/040 version by Andreas R. Kleinert (email below)
  11.  
  12.  Original port of GNUTar V1.09 done by Ed Berger (email below)
  13.  
  14.  
  15.                        *** Why ? ***
  16.  
  17.  When extracting TAR archives on the AMIGA there always had been a problem:
  18.  the only available GNUTar port was hard to find and if you got it
  19.  finally, it was quite old and just unoptimized for higher 68k CPUs.
  20.  
  21.  On the other hand, a simple recompilation wasn't easy for most people,
  22.  since the GNU-C (GCC) Compiler isn't very widely used and adaptions
  23.  for other compilers aren't that easy (as I finally found out ;-)
  24.  
  25.  
  26.                        *** How ? ***
  27.  
  28.  My first step to solve this problem was porting the nice, small and
  29.  handy "DeTar" utility from MS-DOS to Amiga.
  30.  The usage was really simple and easy, since you'd just had to call
  31.  "DeTar [archive]" and the whole archive would have been unpacked.
  32.  While searching for Bugs within DeTar (thus using the available GNUTar
  33.  port) I decided to port GNUTar directly (since there actually appeared
  34.  some effects I thought of as bugs of DeTar, but as well possibly
  35.  could have been bugs of the Amiga version of GNUTar ;-)
  36.  
  37.  So there suddenly was a new SAS/C V6.55 port of GNUTar for the Amiga,
  38.  which wasn't perfect at all, but was thought as a base for further
  39.  actions by other people (or me :-)
  40.  
  41.  People greatly reacted on this new GNUTar port and reported bugs
  42.  as well as request for also creating updates, which make use of
  43.  features of newer GNUTar versions.
  44.  
  45.  So I dropped the old V1.09 sources ported by Ed Berger and began
  46.  re-porting V1.11.2 (a beta test release) to the Amiga, still using
  47.  some of the old port stubs (but GCC stuff became useless now).
  48.  
  49.                        *** Next ? ***
  50.  
  51.  Yet did not succeed in correctly porting 1.11.8.
  52.  
  53.                        *** Details ? ***
  54.  
  55.  Before I add the original "documentation" of Ed Berger, please take
  56.  a look at these notes:
  57.  
  58.        - some of the defines and/or functions, which hadn't be present
  59.          for the GCC are actually available for SAS/C and vice versa.
  60.          So there are still some dummy-functions or (hopefully)
  61.          equivalent replacements for such things.
  62.          See the files "sas_amiga.c" and "sas_amiga2.c" for code-replacements
  63.          and the headers within "sasinclude/" and "sasinclude/sys/"
  64.          for additional defines.
  65.          I went this way, since this prevented me from changing _much_
  66.          within the orginal source.
  67.          The most important thing to be done was setting definitions
  68.          and compiler options in the best way and then fill in the missing
  69.          parts (sounds easier, than it was %-)
  70.  
  71.          see source/CHANGES.AMIGA
  72.  
  73.        - ahm...well: while compiling there occured several problems
  74.          (warnings, missing functions, which had to be substituted
  75.           by dummies, etc.). So remember: it works, but there's really
  76.           no guarantee for anything !
  77.  
  78.  
  79.                        *** Who ? ***
  80.  
  81.  Andreas R. Kleinert, Fido   2:2457/435.10
  82.                       UseNet Andreas_Kleinert@superview.ftn.sub.org
  83.                              Andreas_Kleinert@t-online.de
  84.  
  85.  
  86.                        *** History ? ***
  87.  
  88.  Revisions:
  89.  
  90.   V1.3   (19.04.1996): - V1.1/1.2 had a serious bug in archive creation,
  91.                          since I did not insert the "#ifdef AMIGA" code
  92.                          fragments, which Ed Berger added to access
  93.                          devices and paths in an AmigaDOS-conformeous way
  94.                          (-> Stefan Becker, stefanb@yello.ping.de,
  95.                           who seemed to be the only one actually
  96.                           *creating* archives with GNUtar ?!)
  97.                          Fixed by adding the specific parts of 1.09-create.c
  98.                          to 1.11.2.-"create.c" only
  99.                        - GNUtar could not extract any files containing
  100.                          ":" in their names, since AmigaDOS would think
  101.                          these were actually devices (or bad device-names
  102.                          containing more than one ":").
  103.                          Fixed within "extract.c" where these additional
  104.                          ":" will be replaced by "_", also giving a
  105.                          warning message.
  106.                          (-> Christopher P. Parris, CPP1233@tntech.edu)
  107.                        - Why did I port such an old version ?
  108.                          (-> Kjell Irgens, kjelli@stud.cs.uit.no)
  109.                          Well, first I had not newer sources. Then, when
  110.                          I found one, I tried to port 1.11.8 (yesterday),
  111.                          but it seems as if the compilter produces broken
  112.                          code with unreproduceable crashes.
  113.                          It was a lot easier fixing 1.11.2 instead of
  114.                          straightly porting 1.11.8 with these fixes.
  115.                          Nevertheless, it may follow-up.
  116.  
  117.   V1.2   (11.03.1996): - fully recompiled with SAS/C V6.56
  118.                        - added Osma Ahvenlampi's fix for the
  119.                          1.0.2 protection bit problem (archive
  120.                          appeared at "util/shell" on AmiNet).
  121.  
  122.                          I adapted it to the new 1.11.2 source and
  123.                          changed the way binding it into the source
  124.                          (fully via REDEFINES.WTH, no changes to tar.h,
  125.                           thus had to call lstat() from sas_amiga.c instead
  126.                           of stat() to avoid recursion).
  127.  
  128.                          Here's what Osma originally said:
  129.  
  130.                          'This patch makes an attempt to translate Amiga
  131.                          protection bits to the closest UNIX equivalents.
  132.                          When extracting UNIX archives, it also sets the
  133.                          group and world bits as specified in the archive,
  134.                          for those with multiuser filesystems.
  135.                          When creating an archive, these bits are
  136.                          unfortunately not retained, since SAS/C's stat()
  137.                          function ignores them.'
  138.                          (-> Osma.Ahvenlampi@hut.fi)
  139.  
  140.   V1.1   (16.09.1995): - did change version counting: it's too
  141.                          confusing the old way.
  142.                          The original version number of the GNUTar
  143.                          we base on, still is mentioned at the top of
  144.                          this documentation
  145.                        - completely redid the port: we now do use
  146.                          the original GNUTar 1.11.2 (a so-called beta
  147.                          test release) instead of the AMIGA/GCC-adapted
  148.                          GNUTar 1.09.
  149.                          Kind of an update: I simply copied the new
  150.                          source over the old one, changed the compiler
  151.                          settings, added some more include files and
  152.                          resolved all inconsistencies - of course
  153.                          *without directly changing any piece* of
  154.                          the original GNU C-Sources!
  155.                          (-> Regis Rampnoux, ...)
  156.                        - README and GNU-License (COPYING) also have been
  157.                          updated - old GNU license replaced by newer one.
  158.                          There was no update to Tar.man - sorry
  159.                          (but I added a specific note to it, to cover this).
  160.                        - removed some GCC-addon's, which Ed Berger had
  161.                          designed for V1.09, but which won't work with
  162.                          V1.11.2 any longer. You may take them from
  163.                          Amiga release V1.0.2 (23.07.1995) and adapt them
  164.                          - if you like or need them for GCC.
  165.                        - again did change chmod() - there was a mysterious
  166.                          effect, which caused it to be restored to the
  167.                          old, wrong way
  168.                        - replaced 68030 and 68040 versions by a combined
  169.                          68030/040 version, since SAS/C does not
  170.                          actually make any differences for our code.
  171.  
  172.   V1.0.2 (23.07.1995): - hey, found out that the base version actually
  173.                          had been released as V1.09.
  174.                          Added note to this readme.
  175.                        - two people complained, that my GNUTar port did
  176.                          not set correct flags out of "hsparwed" for the
  177.                          amiga files when extracting from archives, as the
  178.                          old GNUTar did.
  179.                          Well, foudn out, that the old one just _did_ _not_
  180.                          _change_ the default flags (always "rwed") and
  181.                          we're now just doing the same, since the mode
  182.                          field of unix TARs is either broken ("hpw" always
  183.                          after conversion Unix->Amiga) or SAS/C's definition
  184.                          for the S_IREAD (and so on) flags aren't compatible.
  185.                          Now "rwed" will be set always.
  186.                          You may change this behaviour within "sas_chmod()"
  187.                          in "sas_amiga.c".
  188.                          (-> bussjaeg@informatik.tu-muenchen.de;
  189.                           Christian Bauernfeind,
  190.                           crisbf@theorie3.physik.uni-erlangen.de)
  191.                        - mkdir(), which needs only one argument with SAS/C
  192.                          had been called with two (got warnings).
  193.                          Now we're doing this:
  194.                            #define mkdir(x, y) mkdir(x)
  195.                          Well, it works ;-)
  196.  
  197.   V1.0.1 (07.07.1995): - re-compiled with SAS/C V6.55
  198.                        - added 68040 version
  199.                        - removed object files from archive due to size
  200.                        - fixed bug note in documentation; was not a bug
  201.                          (-> David Balazic, david.balazic@uni-mb.si)
  202.  
  203.   V1.00  (23.03.1995): - first release, compiled with SAS/C V6.51
  204.  
  205.  
  206. ****************************************************************************
  207.  
  208. Following is, what Ed Berger originally wrote in "readme.1st"
  209. for V1.09. As with Amiga release V1.1 (GNUTar V1.11.2, first port release)
  210. I re-switched to the original GNU-sources in combination with some
  211. of the old code-workarounds:
  212. ----------------------------------------------------------------------------
  213.  
  214. I was looking for a tar program for the Amiga, since the gcc distribution,
  215. and minix distribution files are often in this format.  Tarsplit from an
  216. old fish disk was not sufficient.  I kept hearing about gnu-tar, but
  217. never saw it archived anywhere, until now.
  218.  
  219. Since I was not able to find gnu-tar, under any separate archive on the
  220. fish disks, or on my favorite ftp-sites, I pulled this out of the UUCP
  221. distribution from uunet.  The binary and man page were on disk 2, and
  222. the source files were on disk 3.  I hope that I didn't miss anything
  223. important.  I apologize for any inconvenience this may cause.  If in doubt
  224. go back to the UUCP distribution.
  225.  
  226. -Ed Berger
  227.  eb15@andrew.cmu.edu
  228.  
  229. ****************************************************************************
  230.